/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2023-2023. All rights reserved.
 * File name     :  ddrc_rasc_reg_offset.h
 * Description   :  SPU DDRC rasc 结构体定义
 * History       :  2023/04/19 11:22:23 Create file
 */

#ifndef __DDRC_RASC_C_UNION_DEFINE_H__
#define __DDRC_RASC_C_UNION_DEFINE_H__

/* Define the union csr_rasc_ctrl_mode_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ras_en      : 1  ; /* [0] */
        u32    poison_en   : 1  ; /* [1] */
        u32    ds_en       : 1  ; /* [2] */
        u32    rd_chk_bys  : 1  ; /* [3] */
        u32    sw_chk_type : 1  ; /* [4] */
        u32    rsv_0       : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_mode_u;

/* Define the union csr_rasc_ctrl_adddc_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    adddc_region0_start : 1  ; /* [0] */
        u32    adddc_region1_start : 1  ; /* [1] */
        u32    virtual_lockstep_en : 1  ; /* [2] */
        u32    rsv_1               : 29  ; /* [31:3] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_adddc_u;

/* Define the union csr_rasc_ctrl_pascrub_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    pascrub_en : 1  ; /* [0] */
        u32    rsv_2      : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_pascrub_u;

/* Define the union csr_rasc_ctrl_sparing_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rnksp_start : 1  ; /* [0] */
        u32    devsp_start : 1  ; /* [1] */
        u32    rsv_3       : 30  ; /* [31:2] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_sparing_u;

/* Define the union csr_rasc_ctrl_flush_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    flush_en : 1  ; /* [0] */
        u32    rsv_4    : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_flush_u;

/* Define the union csr_rasc_ctrl_errinj_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_start : 1  ; /* [0] */
        u32    rsv_5        : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_errinj_u;

/* Define the union csr_rasc_ctrl_funnel_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    funnel_en : 1  ; /* [0] */
        u32    rsv_6     : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_ctrl_funnel_u;

/* Define the union csr_rasc_cfg_mode_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    dev_width     : 1  ; /* [0] */
        u32    dev_3ds       : 1  ; /* [1] */
        u32    mem_rankgroup : 2  ; /* [3:2] */
        u32    ras_clkon     : 1  ; /* [4] */
        u32    rsv_7         : 3  ; /* [7:5] */
        u32    rsv_8         : 8  ; /* [15:8] */
        u32    dram_type     : 4  ; /* [19:16] */
        u32    rsv_9         : 12  ; /* [31:20] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_mode_u;

/* Define the union csr_rasc_cfg_rankmap_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    mem_col        : 3  ; /* [2:0] */
        u32    rsv_10         : 1  ; /* [3] */
        u32    mem_row        : 3  ; /* [6:4] */
        u32    rsv_11         : 1  ; /* [7] */
        u32    mem_bank       : 2  ; /* [9:8] */
        u32    rsv_12         : 2  ; /* [11:10] */
        u32    mem_logic_rank : 2  ; /* [13:12] */
        u32    rsv_13         : 2  ; /* [15:14] */
        u32    mem_rank       : 2  ; /* [17:16] */
        u32    rsv_14         : 2  ; /* [19:18] */
        u32    mem_bg         : 2  ; /* [21:20] */
        u32    rsv_15         : 10  ; /* [31:22] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rankmap_u;

/* Define the union csr_rasc_cfg_clr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    all_errcnt_clr    : 1  ; /* [0] */
        u32    ha_errcnt_clr     : 1  ; /* [1] */
        u32    vls_errcnt_clr    : 1  ; /* [2] */
        u32    rvls_errcnt_clr   : 1  ; /* [3] */
        u32    pa_errcnt_clr     : 1  ; /* [4] */
        u32    sp_errcnt_clr     : 1  ; /* [5] */
        u32    sp_rberrcnt_clr   : 1  ; /* [6] */
        u32    rsv_16            : 1  ; /* [7] */
        u32    corr_errcnt_clr   : 1  ; /* [8] */
        u32    uncorr_errcnt_clr : 1  ; /* [9] */
        u32    rsv_17            : 22  ; /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_clr_u;

/* Define the union csr_rasc_cfg_info_rnk_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    idx_rnk      : 4  ; /* [3:0] */
        u32    rnk_sel_mode : 1  ; /* [4] */
        u32    rsv_18       : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_info_rnk_u;

/* Define the union csr_rasc_cfg_info_devidx_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    dev_idx_search_en    : 1  ; /* [0] */
        u32    dev_search_offset_en : 1  ; /* [1] */
        u32    rsv_19               : 2  ; /* [3:2] */
        u32    dev_idx_rank         : 4  ; /* [7:4] */
        u32    dev_idx_device       : 5  ; /* [12:8] */
        u32    rsv_20               : 19  ; /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_info_devidx_u;

/* Define the union csr_rasc_cfg_info_bnkidx_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    bnk_idx_search_en    : 1  ; /* [0] */
        u32    bnk_search_offset_en : 1  ; /* [1] */
        u32    rsv_21               : 2  ; /* [3:2] */
        u32    bnkidx_rnk           : 4  ; /* [7:4] */
        u32    bnkidx_dev           : 5  ; /* [12:8] */
        u32    rsv_22               : 3  ; /* [15:13] */
        u32    bnkidx_bnk           : 4  ; /* [19:16] */
        u32    rsv_23               : 12  ; /* [31:20] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_info_bnkidx_u;

/* Define the union csr_rasc_cfg_pastart_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    dimm_start_rank   : 2  ; /* [1:0] */
        u32    rsv_24            : 2  ; /* [3:2] */
        u32    dimm_start_bank   : 4  ; /* [7:4] */
        u32    dimm_start_row    : 18  ; /* [25:8] */
        u32    dimm_start_lgrank : 3  ; /* [28:26] */
        u32    rsv_25            : 3  ; /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_pastart_u;

/* Define the union csr_rasc_cfg_paend_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    dimm_end_rank   : 2  ; /* [1:0] */
        u32    rsv_26          : 2  ; /* [3:2] */
        u32    dimm_end_bank   : 4  ; /* [7:4] */
        u32    dimm_end_row    : 18  ; /* [25:8] */
        u32    dimm_end_lgrank : 3  ; /* [28:26] */
        u32    rsv_27          : 3  ; /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_paend_u;

/* Define the union csr_rasc_cfg_ps_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rcmd_num      : 4  ; /* [3:0] */
        u32    interval_time : 24  ; /* [27:4] */
        u32    ps_type       : 2  ; /* [29:28] */
        u32    rsv_28        : 2  ; /* [31:30] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_ps_u;

/* Define the union csr_rasc_cfg_adddc_region0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    region0_enable    : 1  ; /* [0] */
        u32    region0_size      : 2  ; /* [2:1] */
        u32    rsv_29            : 2  ; /* [4:3] */
        u32    region0_fail_dev  : 5  ; /* [9:5] */
        u32    region0_fail_rnk  : 4  ; /* [13:10] */
        u32    region0_fail_bnk  : 4  ; /* [17:14] */
        u32    region0_buddy_rnk : 4  ; /* [21:18] */
        u32    region0_buddy_bnk : 4  ; /* [25:22] */
        u32    rsv_30            : 6  ; /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_adddc_region0_u;

/* Define the union csr_rasc_cfg_adddc_region1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    region1_enable    : 1  ; /* [0] */
        u32    region1_size      : 2  ; /* [2:1] */
        u32    region1_vls_type  : 2  ; /* [4:3] */
        u32    region1_fail_dev  : 5  ; /* [9:5] */
        u32    region1_fail_rnk  : 4  ; /* [13:10] */
        u32    region1_fail_bnk  : 4  ; /* [17:14] */
        u32    region1_buddy_rnk : 4  ; /* [21:18] */
        u32    region1_buddy_bnk : 4  ; /* [25:22] */
        u32    rsv_31            : 6  ; /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_adddc_region1_u;

/* Define the union csr_rasc_cfg_adddc_rvls_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    region1_buddy0_rnk : 4  ; /* [3:0] */
        u32    region1_buddy0_bnk : 4  ; /* [7:4] */
        u32    region1_buddy1_rnk : 4  ; /* [11:8] */
        u32    region1_buddy1_bnk : 4  ; /* [15:12] */
        u32    rsv_32             : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_adddc_rvls_u;

/* Define the union csr_rasc_cfg_vls_interval_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    vls_addr_window   : 8  ; /* [7:0] */
        u32    vls_interval_time : 8  ; /* [15:8] */
        u32    vls_cmd_num       : 5  ; /* [20:16] */
        u32    rsv_33            : 11  ; /* [31:21] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_vls_interval_u;

/* Define the union csr_rasc_cfg_vls_x8_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    x8_buddy_rank_0 : 4  ; /* [3:0] */
        u32    x8_buddy_rank_1 : 4  ; /* [7:4] */
        u32    x8_buddy_rank_2 : 4  ; /* [11:8] */
        u32    x8_buddy_rank_3 : 4  ; /* [15:12] */
        u32    x8_buddy_rank_4 : 4  ; /* [19:16] */
        u32    x8_buddy_rank_5 : 4  ; /* [23:20] */
        u32    x8_buddy_rank_6 : 4  ; /* [27:24] */
        u32    x8_buddy_rank_7 : 4  ; /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_vls_x8_u;

/* Define the union csr_rasc_cfg_sp_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    backup_rnk    : 4  ; /* [3:0] */
        u32    source_rnk    : 4  ; /* [7:4] */
        u32    sp_region_sel : 1  ; /* [8] */
        u32    rd_retry_en   : 1  ; /* [9] */
        u32    rdback_en     : 1  ; /* [10] */
        u32    rsv_34        : 1  ; /* [11] */
        u32    source_dev    : 5  ; /* [16:12] */
        u32    rsv_35        : 15  ; /* [31:17] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_sp_u;

/* Define the union csr_rasc_cfg_spr_interval_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    sp_addr_window   : 8  ; /* [7:0] */
        u32    sp_interval_time : 8  ; /* [15:8] */
        u32    rsv_36           : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_spr_interval_u;

/* Define the union csr_rasc_cfg_spr_outstanding_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    sp_cmd_outstanding : 5  ; /* [4:0] */
        u32    rsv_37             : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_spr_outstanding_u;

/* Define the union csr_rasc_cfg_ce_lvl_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ce_err_lvl : 16  ; /* [15:0] */
        u32    rsv_38     : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_ce_lvl_u;

/* Define the union csr_rasc_cfg_funnel_base_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    funnel_cntr_base : 16  ; /* [15:0] */
        u32    rsv_39           : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_funnel_base_u;

/* Define the union csr_rasc_cfg_funnel_th_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    funnel_cntr_th     : 24  ; /* [23:0] */
        u32    funnel_th_cnt_mode : 1  ; /* [24] */
        u32    ps_corr_funnel     : 1  ; /* [25] */
        u32    rsv_40             : 6  ; /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_funnel_th_u;

/* Define the union csr_rasc_cfg_errinjmode_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_en   : 1  ; /* [0] */
        u32    errinj_mode : 3  ; /* [3:1] */
        u32    errinj_wr   : 1  ; /* [4] */
        u32    rsv_41      : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinjmode_u;

/* Define the union csr_rasc_cfg_errinj_addr_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_addr_col : 14  ; /* [13:0] */
        u32    errinj_addr_row : 18  ; /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinj_addr_l_u;

/* Define the union csr_rasc_cfg_errinj_addr_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_addr_bank  : 4  ; /* [3:0] */
        u32    errinj_addr_lgrnk : 3  ; /* [6:4] */
        u32    rsv_42            : 1  ; /* [7] */
        u32    errinj_addr_rank  : 4  ; /* [11:8] */
        u32    rsv_43            : 20  ; /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinj_addr_h_u;

/* Define the union csr_rasc_cfg_errinj_addrmsk_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_addr_col_msk : 14  ; /* [13:0] */
        u32    errinj_addr_row_msk : 18  ; /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinj_addrmsk_l_u;

/* Define the union csr_rasc_cfg_errinj_addrmsk_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_addr_bank_msk  : 4  ; /* [3:0] */
        u32    errinj_addr_lgrnk_msk : 3  ; /* [6:4] */
        u32    rsv_44                : 1  ; /* [7] */
        u32    errinj_addr_rank_msk  : 4  ; /* [11:8] */
        u32    rsv_45                : 20  ; /* [31:12] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinj_addrmsk_h_u;

/* Define the union csr_rasc_cfg_err_buf_sel_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    err_buf_sel : 1  ; /* [0] */
        u32    rsv_46      : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_err_buf_sel_u;

/* Define the union csr_rasc_cfg_errinj_dmsk_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_dmsk : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_errinj_dmsk_u;

/* Define the union csr_rasc_cfg_poison_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    poison_chk_type : 1  ; /* [0] */
        u32    rsv_47          : 31  ; /* [31:1] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_poison_u;

/* Define the union csr_rasc_cfg_ram_errinj_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rsv_48      : 4  ; /* [3:0] */
        u32    bram_errinj : 2  ; /* [5:4] */
        u32    rsv_49      : 26  ; /* [31:6] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_ram_errinj_u;

/* Define the union csr_rasc_cfg_ram_tmod_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ram_tmod : 10  ; /* [9:0] */
        u32    rsv_50   : 22  ; /* [31:10] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_ram_tmod_u;

/* Define the union csr_rasc_cfg_corr_th_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_corr_th : 16  ; /* [15:0] */
        u32    rsv_51     : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_corr_th_u;

/* Define the union csr_rasc_cfg_rh_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_en  : 1  ; /* [0] */
        u32    rsv_52 : 7  ; /* [7:1] */
        u32    rh_mac : 10  ; /* [17:8] */
        u32    rsv_53 : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_u;

/* Define the union csr_rasc_cfg_rh_adja_op_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_op_up_lv1   : 3  ; /* [2:0] */
        u32    rsv_54              : 1  ; /* [3] */
        u32    rh_adja_op_up_lv2   : 3  ; /* [6:4] */
        u32    rsv_55              : 1  ; /* [7] */
        u32    rh_adja_op_up_lv3   : 3  ; /* [10:8] */
        u32    rsv_56              : 1  ; /* [11] */
        u32    rh_adja_op_up_lv4   : 3  ; /* [14:12] */
        u32    rsv_57              : 1  ; /* [15] */
        u32    rh_adja_op_down_lv1 : 3  ; /* [18:16] */
        u32    rsv_58              : 1  ; /* [19] */
        u32    rh_adja_op_down_lv2 : 3  ; /* [22:20] */
        u32    rsv_59              : 1  ; /* [23] */
        u32    rh_adja_op_down_lv3 : 3  ; /* [26:24] */
        u32    rsv_60              : 1  ; /* [27] */
        u32    rh_adja_op_down_lv4 : 3  ; /* [30:28] */
        u32    rsv_61              : 1  ; /* [31] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_op_u;

/* Define the union csr_rasc_cfg_rh_adja_up_lv1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_up_lv1 : 18  ; /* [17:0] */
        u32    rsv_62         : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_up_lv1_u;

/* Define the union csr_rasc_cfg_rh_adja_up_lv2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_up_lv2 : 18  ; /* [17:0] */
        u32    rsv_63         : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_up_lv2_u;

/* Define the union csr_rasc_cfg_rh_adja_up_lv3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_up_lv3 : 18  ; /* [17:0] */
        u32    rsv_64         : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_up_lv3_u;

/* Define the union csr_rasc_cfg_rh_adja_up_lv4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_up_lv4 : 18  ; /* [17:0] */
        u32    rsv_65         : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_up_lv4_u;

/* Define the union csr_rasc_cfg_rh_adja_down_lv1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_down_lv1 : 18  ; /* [17:0] */
        u32    rsv_66           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_down_lv1_u;

/* Define the union csr_rasc_cfg_rh_adja_down_lv2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_down_lv2 : 18  ; /* [17:0] */
        u32    rsv_67           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_down_lv2_u;

/* Define the union csr_rasc_cfg_rh_adja_down_lv3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_down_lv3 : 18  ; /* [17:0] */
        u32    rsv_68           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_down_lv3_u;

/* Define the union csr_rasc_cfg_rh_adja_down_lv4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_adja_down_lv4 : 18  ; /* [17:0] */
        u32    rsv_69           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_adja_down_lv4_u;

/* Define the union csr_rasc_cfg_rh_scram_up_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_up_lv1 : 5  ; /* [4:0] */
        u32    rsv_70          : 3  ; /* [7:5] */
        u32    rh_scram_up_lv2 : 5  ; /* [12:8] */
        u32    rsv_71          : 3  ; /* [15:13] */
        u32    rh_scram_up_lv3 : 5  ; /* [20:16] */
        u32    rsv_72          : 3  ; /* [23:21] */
        u32    rh_scram_up_lv4 : 5  ; /* [28:24] */
        u32    rsv_73          : 3  ; /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_up_u;

/* Define the union csr_rasc_cfg_rh_scram_down_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_down_lv1 : 5  ; /* [4:0] */
        u32    rsv_74            : 3  ; /* [7:5] */
        u32    rh_scram_down_lv2 : 5  ; /* [12:8] */
        u32    rsv_75            : 3  ; /* [15:13] */
        u32    rh_scram_down_lv3 : 5  ; /* [20:16] */
        u32    rsv_76            : 3  ; /* [23:21] */
        u32    rh_scram_down_lv4 : 5  ; /* [28:24] */
        u32    rsv_77            : 3  ; /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_down_u;

/* Define the union csr_rasc_cfg_rh_scram_msk_lv1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_msk_lv1 : 18  ; /* [17:0] */
        u32    rsv_78           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_msk_lv1_u;

/* Define the union csr_rasc_cfg_rh_scram_msk_lv2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_msk_lv2 : 18  ; /* [17:0] */
        u32    rsv_79           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_msk_lv2_u;

/* Define the union csr_rasc_cfg_rh_scram_msk_lv3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_msk_lv3 : 18  ; /* [17:0] */
        u32    rsv_80           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_msk_lv3_u;

/* Define the union csr_rasc_cfg_rh_scram_msk_lv4_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_scram_msk_lv4 : 18  ; /* [17:0] */
        u32    rsv_81           : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_scram_msk_lv4_u;

/* Define the union csr_rasc_cfg_rh_tcal_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_tcal : 4  ; /* [3:0] */
        u32    rsv_82  : 28  ; /* [31:4] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_tcal_u;

/* Define the union csr_rasc_cfg_rh_status0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_row_dir : 1  ; /* [0] */
        u32    rsv_83     : 3  ; /* [3:1] */
        u32    rh_row_sel : 18  ; /* [21:4] */
        u32    rsv_84     : 10  ; /* [31:22] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_status0_u;

/* Define the union csr_rasc_cfg_rh_status1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rh_row_ori : 18  ; /* [17:0] */
        u32    rsv_85     : 14  ; /* [31:18] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_rh_status1_u;

/* Define the union csr_rasc_cfg_res0_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    cfg_res0 : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_res0_u;

/* Define the union csr_rasc_cfg_res1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    cfg_res1 : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_res1_u;

/* Define the union csr_rasc_cfg_res2_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    cfg_res2 : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_res2_u;

/* Define the union csr_rasc_cfg_res3_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    cfg_res3 : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_cfg_res3_u;

/* Define the union csr_rasc_intmsk_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_corr_int_mask       : 1  ; /* [0] */
        u32    ha_uncorr_int_mask     : 1  ; /* [1] */
        u32    ha_corr_alarm_int_mask : 1  ; /* [2] */
        u32    rsv_86                 : 1  ; /* [3] */
        u32    pa_corr_int_mask       : 1  ; /* [4] */
        u32    pa_uncorr_int_mask     : 1  ; /* [5] */
        u32    rsv_87                 : 2  ; /* [7:6] */
        u32    sp_dev_int_mask        : 1  ; /* [8] */
        u32    sp_rnk_int_mask        : 1  ; /* [9] */
        u32    sp_corr_int_mask       : 1  ; /* [10] */
        u32    sp_uncorr_int_mask     : 1  ; /* [11] */
        u32    sp_rb_err_int_mask     : 1  ; /* [12] */
        u32    rsv_88                 : 3  ; /* [15:13] */
        u32    vls_int_mask           : 1  ; /* [16] */
        u32    vls_corr_int_mask      : 1  ; /* [17] */
        u32    vls_uncorr_int_mask    : 1  ; /* [18] */
        u32    rvls_corr_int_mask     : 1  ; /* [19] */
        u32    rvls_uncorr_int_mask   : 1  ; /* [20] */
        u32    rsv_89                 : 5  ; /* [25:21] */
        u32    ebram_serr_int_mask    : 1  ; /* [26] */
        u32    ebram_merr_int_mask    : 1  ; /* [27] */
        u32    rsv_90                 : 4  ; /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_intmsk_u;

/* Define the union csr_rasc_rint_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_corr_rint       : 1  ; /* [0] */
        u32    ha_uncorr_rint     : 1  ; /* [1] */
        u32    ha_corr_alarm_rint : 1  ; /* [2] */
        u32    rsv_91             : 1  ; /* [3] */
        u32    pa_corr_rint       : 1  ; /* [4] */
        u32    pa_uncorr_rint     : 1  ; /* [5] */
        u32    rsv_92             : 2  ; /* [7:6] */
        u32    sp_dev_rint        : 1  ; /* [8] */
        u32    sp_rnk_rint        : 1  ; /* [9] */
        u32    sp_corr_rint       : 1  ; /* [10] */
        u32    sp_uncorr_rint     : 1  ; /* [11] */
        u32    sp_rb_err_rint     : 1  ; /* [12] */
        u32    rsv_93             : 3  ; /* [15:13] */
        u32    vls_int_rint       : 1  ; /* [16] */
        u32    vls_corr_rint      : 1  ; /* [17] */
        u32    vls_uncorr_rint    : 1  ; /* [18] */
        u32    rvls_corr_rint     : 1  ; /* [19] */
        u32    rvls_uncorr_rint   : 1  ; /* [20] */
        u32    rsv_94             : 5  ; /* [25:21] */
        u32    ebram_serr_rint    : 1  ; /* [26] */
        u32    ebram_merr_rint    : 1  ; /* [27] */
        u32    rsv_95             : 4  ; /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_rint_u;

/* Define the union csr_rasc_intsts_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_corr_intsts         : 1  ; /* [0] */
        u32    ha_uncorr_intsts       : 1  ; /* [1] */
        u32    ha_corr_alarm_intsts   : 1  ; /* [2] */
        u32    rsv_96                 : 1  ; /* [3] */
        u32    pa_corr_intsts         : 1  ; /* [4] */
        u32    pa_uncorr_intsts       : 1  ; /* [5] */
        u32    rsv_97                 : 2  ; /* [7:6] */
        u32    sp_dev_intsts          : 1  ; /* [8] */
        u32    sp_rnk_intsts          : 1  ; /* [9] */
        u32    sp_corr_intsts         : 1  ; /* [10] */
        u32    sp_uncorr_intsts       : 1  ; /* [11] */
        u32    sp_rb_err_intsts       : 1  ; /* [12] */
        u32    rsv_98                 : 3  ; /* [15:13] */
        u32    vls_int_intsts         : 1  ; /* [16] */
        u32    vls_corr_int_intsts    : 1  ; /* [17] */
        u32    vls_uncorr_int_intsts  : 1  ; /* [18] */
        u32    rvls_corr_int_intsts   : 1  ; /* [19] */
        u32    rvls_uncorr_int_intsts : 1  ; /* [20] */
        u32    rsv_99                 : 5  ; /* [25:21] */
        u32    ebram_serr_intsts      : 1  ; /* [26] */
        u32    ebram_merr_intsts      : 1  ; /* [27] */
        u32    rsv_100                : 4  ; /* [31:28] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_intsts_u;

/* Define the union csr_rasc_sram_err_addr_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ebram_err_addr : 16  ; /* [15:0] */
        u32    rsv_101        : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_sram_err_addr_u;

/* Define the union csr_rasc_curr_status_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_busy        : 1  ; /* [0] */
        u32    rsv_102        : 3  ; /* [3:1] */
        u32    vls_busy       : 1  ; /* [4] */
        u32    rvls_busy      : 1  ; /* [5] */
        u32    rvls_vls0_busy : 1  ; /* [6] */
        u32    rvls_vls1_busy : 1  ; /* [7] */
        u32    rsv_103        : 4  ; /* [11:8] */
        u32    pa_busy        : 1  ; /* [12] */
        u32    rsv_104        : 3  ; /* [15:13] */
        u32    sp_dev_busy    : 1  ; /* [16] */
        u32    sp_rnk_busy    : 1  ; /* [17] */
        u32    rsv_105        : 2  ; /* [19:18] */
        u32    wdata_busy     : 1  ; /* [20] */
        u32    rsv_106        : 3  ; /* [23:21] */
        u32    rdata_busy     : 1  ; /* [24] */
        u32    cmd_busy       : 1  ; /* [25] */
        u32    rsv_107        : 6  ; /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_status_u;

/* Define the union csr_rasc_curr_errstatus_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_err   : 1  ; /* [0] */
        u32    rsv_108    : 3  ; /* [3:1] */
        u32    uncorr_err : 1  ; /* [4] */
        u32    rsv_109    : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_errstatus_u;

/* Define the union csr_rasc_curr_sprnk_sta_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    sprnk     : 4  ; /* [3:0] */
        u32    sprnk_vld : 1  ; /* [4] */
        u32    rsv_110   : 27  ; /* [31:5] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_sprnk_sta_u;

/* Define the union csr_rasc_curr_spdev_sta_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    spdev_vld  : 8  ; /* [7:0] */
        u32    rsv_111    : 8  ; /* [15:8] */
        u32    spdev_dev0 : 10  ; /* [25:16] */
        u32    rsv_112    : 6  ; /* [31:26] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_spdev_sta_u;

/* Define the union csr_rasc_curr_spdev_dev1_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    spdev_dev1 : 30  ; /* [29:0] */
        u32    rsv_113    : 2  ; /* [31:30] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_spdev_dev1_u;

/* Define the union csr_rasc_curr_cmd_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    cmd_cnt : 8  ; /* [7:0] */
        u32    rsv_114 : 24  ; /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_cmd_cnt_u;

/* Define the union csr_rasc_curr_adddc_sta_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    region0_done          : 1  ; /* [0] */
        u32    rsv_115               : 15  ; /* [15:1] */
        u32    region1_vls_done      : 1  ; /* [16] */
        u32    region1_rvls_done     : 1  ; /* [17] */
        u32    region1_rvls_vls_done : 1  ; /* [18] */
        u32    rsv_116               : 13  ; /* [31:19] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_curr_adddc_sta_u;

/* Define the union csr_rasc_his_uncorr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    uncorr_cnt : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_uncorr_cnt_u;

/* Define the union csr_rasc_his_corr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_cnt : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_cnt_u;

/* Define the union csr_rasc_his_haerr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_corr_cnt   : 16  ; /* [15:0] */
        u32    ha_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_haerr_cnt_u;

/* Define the union csr_rasc_his_paerr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    pa_corr_cnt   : 16  ; /* [15:0] */
        u32    pa_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_paerr_cnt_u;

/* Define the union csr_rasc_his_sperr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    sp_corr_cnt   : 16  ; /* [15:0] */
        u32    sp_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_sperr_cnt_u;

/* Define the union csr_rasc_his_sprberr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    sp_rberr_cnt : 16  ; /* [15:0] */
        u32    rsv_117      : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_sprberr_cnt_u;

/* Define the union csr_rasc_his_vlserr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    vls_corr_cnt   : 16  ; /* [15:0] */
        u32    vls_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_vlserr_cnt_u;

/* Define the union csr_rasc_his_rvlserr_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rvls_corr_cnt   : 16  ; /* [15:0] */
        u32    rvls_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_rvlserr_cnt_u;

/* Define the union csr_rasc_his_rankcnt_inf_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rnk_corr_cnt   : 16  ; /* [15:0] */
        u32    rnk_uncorr_cnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_rankcnt_inf_u;

/* Define the union csr_rasc_his_ha_rankcnt_inf_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    ha_rnk_funnel_corr_cnt : 16  ; /* [15:0] */
        u32    ha_rnk_corr_cnt        : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_ha_rankcnt_inf_u;

/* Define the union csr_rasc_his_rank_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    rnk_corr_vld : 8  ; /* [7:0] */
        u32    rsv_118      : 24  ; /* [31:8] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_rank_err_u;

/* Define the union csr_rasc_his_offset_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    dev_offset_errcnt  : 16  ; /* [15:0] */
        u32    bank_offset_errcnt : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_offset_err_u;

/* Define the union csr_rasc_his_seg_err_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    search_errcnt_l : 16  ; /* [15:0] */
        u32    search_errcnt_h : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_seg_err_u;

/* Define the union csr_rasc_his_worst_dev_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    wst_dev_cnt : 16  ; /* [15:0] */
        u32    wst_dev_rnk : 4  ; /* [19:16] */
        u32    wst_dev_idx : 5  ; /* [24:20] */
        u32    rsv_119     : 7  ; /* [31:25] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_worst_dev_u;

/* Define the union csr_rasc_his_worst_bnk_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    wst_bnk_cnt : 16  ; /* [15:0] */
        u32    wst_bnk_dev : 8  ; /* [23:16] */
        u32    rsv_120     : 1  ; /* [24] */
        u32    wst_bnk_bnk : 4  ; /* [28:25] */
        u32    rsv_121     : 3  ; /* [31:29] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_worst_bnk_u;

/* Define the union csr_rasc_his_rcdtyp_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_int_record   : 5  ; /* [4:0] */
        u32    rsv_122           : 3  ; /* [7:5] */
        u32    uncorr_int_record : 6  ; /* [13:8] */
        u32    rsv_123           : 18  ; /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_rcdtyp_u;

/* Define the union csr_rasc_his_uncorr_addr_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    uncorr_addr_col : 14  ; /* [13:0] */
        u32    uncorr_addr_row : 18  ; /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_uncorr_addr_l_u;

/* Define the union csr_rasc_his_uncorr_addr_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    uncorr_addr_bank  : 4  ; /* [3:0] */
        u32    uncorr_addr_lgrnk : 3  ; /* [6:4] */
        u32    rsv_124           : 1  ; /* [7] */
        u32    uncorr_addr_rnk   : 4  ; /* [11:8] */
        u32    uncorr_addr_pos   : 1  ; /* [12] */
        u32    rsv_125           : 19  ; /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_uncorr_addr_h_u;

/* Define the union csr_rasc_his_uncorr_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    uncorr_rdata : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_uncorr_rdata_u;

/* Define the union csr_rasc_his_uncorr_rdata_cwh_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    uncorr_rdata_cwh : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_uncorr_rdata_cwh_u;

/* Define the union csr_rasc_his_corr_addr_l_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_addr_col : 14  ; /* [13:0] */
        u32    corr_addr_row : 18  ; /* [31:14] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_addr_l_u;

/* Define the union csr_rasc_his_corr_addr_h_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_addr_bank  : 4  ; /* [3:0] */
        u32    corr_addr_lgrnk : 3  ; /* [6:4] */
        u32    rsv_126         : 1  ; /* [7] */
        u32    corr_addr_rnk   : 4  ; /* [11:8] */
        u32    corr_addr_pos   : 1  ; /* [12] */
        u32    rsv_127         : 19  ; /* [31:13] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_addr_h_u;

/* Define the union csr_rasc_his_corr_rdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_rdata : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_rdata_u;

/* Define the union csr_rasc_his_corr_rdata_cwh_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_rdata_cwh : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_rdata_cwh_u;

/* Define the union csr_rasc_his_corr_expdata_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_expdata : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_expdata_u;

/* Define the union csr_rasc_his_corr_expdata_cwh_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    corr_expdata_cwh : 32  ; /* [31:0] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_corr_expdata_cwh_u;

/* Define the union csr_rasc_his_errinj_cnt_u */
typedef union {
    /* Define the struct bits */
    struct {
        u32    errinj_cnt : 16  ; /* [15:0] */
        u32    rsv_128    : 16  ; /* [31:16] */
    } bits;

    /* Define an unsigned member */
    u32    value;
} csr_rasc_his_errinj_cnt_u;

#endif // __DDRC_RASC_C_UNION_DEFINE_H__
